$(function(){
    function projection()
    {
        const Axis  = 6378137;

        /******
         * Web Mercator坐标系经纬度转平面坐标
         * @param {*} lng 
         * @param {*} lat 
         * @returns 
         */
        function LngLat2XY(lng,lat)
        {
            var X = lng * Math.PI * Axis / 180;
            var Y = Math.log(Math.tan((90 + lat) * Math.PI / 360)) / (Math.PI / 180);
            Y = Y * Math.PI * Axis / 180;
            return[X,Y]
        }

        /**
         * Web Mercator坐标系平面坐标转经纬度
         * @param {*} x 
         * @param {*} y 
         * @returns 
         */
        function XY2LngLat(x,y)
        {
            var Lng = x / (Math.PI * Axis) * 180;
            var Lat = y / (Math.PI * Axis) * 180;
            Lat = 180 / Math.PI * (2 * Math.atan(Math.exp(Lat * Math.PI / 180)) - Math.PI / 2);
            return[Lng,Lat];
        }

        return{
            LngLat2XY:LngLat2XY,
            XY2LngLat:XY2LngLat
        }
    }

    window.Projection = projection();
})